home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 3 / BBS in a box - Trilogy III.iso / Files / Tele / M / MACPOINT Folder / MacPoint info / about HexPix next >
Encoding:
Text File  |  1989-10-31  |  2.9 KB  |  45 lines  |  [TEXT/MACA]

  1. about HexPix
  2.  
  3. The MacPoint program (remote response system) uses a format tentatively called HexPix to transmit bitmapped graphics within the text of ordinary BBS messages. An example program for decoding and displaying these hex'ed graphics is included in this folder. I hope Somebody Out There will be inspired to write a program to help folks edit these graphics and save the hex strings to disk, because I'm not sure I have the necessary time and mouse-trapping ability to do it.
  4.  
  5.  
  6. Notes on the protocol:
  7.  
  8. The string ^_bitmap:2, indicates that a black and white bitmapped image is about to be transmitted. Next the width and height, in number of pixels, are given. (The width must be a multiple of 4.) Thus a header line looks like this:
  9.  
  10. ^_bitmap:2,60,63_^
  11.  
  12. This header line is followed by a "hard carriage return" after which we have the hex strings.
  13.  
  14. For practical purposes, the maximum width is 288 pixels and the maximum height is limited by the number of lines of text that can be displayed per message by the various BBS programs
  15.  
  16. Since decoding the bitmaps takes a bit of time, and since the presence of ultra-long hex strings in echo messages might annoy some people, MacPoint ignores bitmaps wider than 72 pixels or taller than 100 pixels; this might be expanded in future versions of MacPoint. A square measuring 72 pixels by 72 pixels would occupy one square inch on a Macintosh screen. Future versions of the software might offer the option of enlarging the image; each bit in the bitmap would be represented by four screen pixels instead of one.
  17.  
  18. Each hex character is a left-to-right binary representation
  19. of four pixels in a horizontal line of the image, like so:
  20.  "0" ....   "8" *...
  21.  "1" ...*   "9" *..*
  22.  "2" ..*.   "A" *.*.   where "*" represents a pixel turned on
  23.  "3" ..**   "B" *.**    (black on the Mac screen, "glowing"
  24.  "4" .*..   "C" **..    on other types of computers) and
  25.  "5" .*.*   "D" **.*    "." represents a pixel turned off
  26.  "6" .**.   "E" ***.    (background white on the Mac screen,
  27.  "7" .***   "F" ****    "dark" on other types of computers)
  28.  
  29. Each string of hex characters represents one horizontal line of the image, thus if you see:
  30.      8F36A001 80C21501 8F36A001 etc.
  31. you know you're looking at part of a bitmapped image that is 32 pixels wide, since each string is 8 characters long and 8*4=32.
  32.  
  33. The hex strings are separated by spaces so that various types of BBS software can perform word-wrap on the strings (otherwise they might get clipped off and chopped up; try entering a 5000-character-long word on a BBS and you'll see what I mean).
  34.  
  35. The bitmap transmission ends with a carriage return followed by the signal:
  36. ^_bitmap,end_^
  37.  
  38. (You might wonder why I used a comma there instead of a colon; I cannot explain it.)
  39.  
  40. When composing replies, MacPoint does not allow users to "Quote" lines which contain the string "^_bitmap"; this hopefully prevents false starts of the bitmap-decoding routine.
  41.  
  42.  
  43.                   -Rick Harrison  29 Oct 89
  44.  
  45.